package com.zekdot.password.service;

import com.zekdot.password.dto.Envelope;
import com.zekdot.password.entity.PasswordDataEntity;
import com.zekdot.password.entity.UserEntity;

/**
 * Create by zekdot on 19-8-6.
 */
public interface PasswordDataService {
    /**
     * 插入密码实体
     * @param passwordEntity 密码实体
     * @param userEntity 用户实体
     * @return
     */
    Envelope insertPassword(PasswordDataEntity passwordEntity, UserEntity userEntity);

    /**
     * 根据最后一条id获取一些密码
     * @param lastId 最后一条id
     * @param pageSize 一页长度
     * @param userEntity 用户实体
     * @return
     */
    Envelope getPasswordByPage(int lastId, int pageSize, UserEntity userEntity);

    /**
     * 根据id删除某条密码实体
     * @param id 密码id
     * @param userEntity 用户实体
     * @return
     */
    Envelope deletePassword(int id, UserEntity userEntity);

    /**
     * 根据关键字查看密码
     * @param keyword 关键字
     * @param lastId 最后一条id
     * @param pageSize 页码长度
     * @param userEntity 用户实体
     * @return
     */
    Envelope searchPassword(String keyword, int lastId, int pageSize, UserEntity userEntity);

    /**
     * 根据id获取密码
     * @param id 密码id
     * @param userEntity 用户实体
     * @return
     */
    Envelope getOnePassword(int id, UserEntity userEntity);
}
